System and method for identifying a correct orientation of a multimedia content item

ABSTRACT

A method and system for identifying a correct orientation of a multimedia content item are presented. The method includes receiving from a user device the multimedia content item; identifying at least one object shown in the multimedia content item; generating by a signature generator system (SGS) at least one signature for the at least one object shown in the multimedia content item; querying, using the at least one generated signature, a deep-content-classification (DCC) system to find at least one concept that matches the at least one object, wherein the querying of the DCC system is performed using the at least one signature generated for each object shown in the multimedia content item; determining a correct orientation of the at least one matching concept; and comparing an orientation of the at least one object to the determined correct orientation to determine if the at least one object is correctly oriented.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. provisional application No.62/030,086 filed on Jul. 29, 2014. This application is also acontinuation-in-part (CIP) of U.S. patent application Ser. No.14/096,865 filed Dec. 4, 2013, now pending, which claims the benefit ofU.S. provisional application No. 61/890,251 filed Oct. 13, 2013. TheSer. No. 14/096,865 Application is a continuation-in-part (CIP) of U.S.patent application Ser. No. 13/624,397 filed on Sep. 21, 2012, nowpending. The Ser. No. 13/624,397 application is a CIP of:

(a) U.S. patent application Ser. No. 13/344,400 filed on Jan. 5, 2012,U.S. Pat. No. 8,959,037, which is a continuation of U.S. patentapplication Ser. No. 12/434,221, filed May 1, 2009, now U.S. Pat. No.8,112,376;

(b) U.S. patent application Ser. No. 12/195,863, filed Aug. 21, 2008,now U.S. Pat. No. 8,326,775, which claims priority under 35 USC 119 fromIsraeli Application No. 185414, filed on Aug. 21, 2007, and which isalso a continuation-in-part of the below-referenced U.S. patentapplication Ser. No. 12/084,150; and

(c) U.S. patent application Ser. No. 12/084,150 having a filing date ofApr. 7, 2009, now U.S. Pat. No. 8,655,801, which is the National Stageof International Application No. PCT/IL2006/001235, filed on Oct. 26,2006, which claims foreign priority from Israeli Application No. 171577filed on Oct. 26, 2005 and Israeli Application No. 173409 filed on 29Jan. 2006.

All of the applications referenced above are herein incorporated byreference for all that they contain.

TECHNICAL FIELD

The present invention relates generally to the analysis of multimediacontent items, and more specifically to techniques for identifying acorrect orientation of a multimedia content item.

BACKGROUND

Computing devices, such as mobile devices, tablets, smartphones, and thelikes, frequently include an orientation sensor that indicates theorientation of the computing devices with respect to a reference point,such as gravitational pull or other orientation references. Currentapplications executed on these computing devices use the orientationinformation of the computing devices to adjust functions of eachcomputing device. For example, such applications are configured torotate a multimedia content item displayed on a user interface of amobile device based on the orientation of the mobile device.

The problem with such applications is that the multimedia content itemis not analyzed before it is displayed on the user interface. Thus, in acase where the orientation of the multimedia content item (e.g., animage), or portion of it (i.e., object shown in the image) is incorrectin the first place; the image will be displayed in an incorrectorientation on the user interface despite the orientation sensor themobile device is equipped with. For example, in a case where an image iscaptured by a mobile device with an inarticulate camera angle, the viewof the image (as captured) is not vertical or horizontal to the ground,hence using the existing orientation sensor to rotate the image will notsolve the problem.

It would be therefore advantageous to provide an efficient solution toanalyze multimedia content items. It would be further advantageous ifsuch a solution would enable identification of a correct orientation ofan object shown in the multimedia content item.

SUMMARY

A summary of several example embodiments of the disclosure follows. Thissummary is provided for the convenience of the reader to provide a basicunderstanding of such embodiments and does not wholly define the breadthof the disclosure. This summary is not an extensive overview of allcontemplated embodiments, and is intended to neither identify key orcritical elements of all aspects nor delineate the scope of any or allembodiments. Its sole purpose is to present some concepts of one or moreembodiments in a simplified form as a prelude to the more detaileddescription that is presented later. For convenience, the term someembodiments may be used herein to refer to a single embodiment ormultiple embodiments of the disclosure.

Certain embodiments include a method for identifying a correctorientation of a multimedia content item. The method comprises receivingfrom a user device the multimedia content item; identifying at least oneobject shown in the multimedia content item; generating by a signaturegenerator system (SGS) at least one signature for the at least oneobject shown in the multimedia content item; querying, using the atleast one generated signature, a deep-content-classification (DCC)system to find at least one concept that matches the at least oneobject, wherein the querying of the DCC system is performed using the atleast one signature generated for each object shown in the multimediacontent item; determining a correct orientation of the at least onematching concept; and comparing an orientation of the at least oneobject to the determined correct orientation to determine if the atleast one object is correctly oriented.

Certain embodiments include a system for identifying a correctorientation of a multimedia content item. The system comprises aninterface to a network for receiving the multimedia content item; aprocessing unit; and a memory communicatively connected to theprocessing unit, wherein the memory contains instructions that, whenexecuted by the processing unit, configures the system to: receive froma user device the multimedia content item; identify at least one objectshown in the multimedia content item; generate by a signature generatorsystem (SGS) at least one signature for the at least one object shown inthe multimedia content item; query, using the at least one generatedsignature, a deep-content-classification (DCC) system to find at leastone concept that matches the at least one object, wherein the queryingof the DCC system is performed using the at least one signaturegenerated for each object shown in the multimedia content item;determine a correct orientation of the at least one matching concept;and comparing an orientation of the at least one object to thedetermined correct orientation to determine if the at least one objectis correctly oriented.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter disclosed herein is particularly pointed out anddistinctly claimed in the claims at the conclusion of the specification.The foregoing and other objects, features, and advantages of thedisclosed embodiments will be apparent from the following detaileddescription taken in conjunction with the accompanying drawings.

FIG. 1 is a schematic block diagram of a network system utilized todescribe the various embodiments disclosed herein.

FIG. 2 is a flowchart describing the process of identifying a correctorientation of a multimedia content item according to an embodiment.

FIG. 3 is a schematic block diagram of a drawing utilized to describethe correction of an incorrect orientation according to an embodiment.

FIG. 4 is a block diagram depicting the basic flow of information in asignature generator system.

FIG. 5 is a diagram showing the flow of patches generation, responsevector generation, and signature generation in a large-scalespeech-to-text system.

DETAILED DESCRIPTION

It is important to note that the embodiments disclosed herein are onlyexamples of the many advantageous uses of the innovative teachingsherein. In general, statements made in the specification of the presentapplication do not necessarily limit any of the various claimedembodiments. Moreover, some statements may apply to some inventivefeatures but not to others. In general, unless otherwise indicated,singular elements may be in plural and vice versa with no loss ofgenerality. In the drawings, like numerals refer to like parts throughseveral views.

Certain exemplary embodiments disclosed herein include a method foranalyzing the orientation of objects shown in a multimedia content itemfor detecting an incorrect orientation of the multimedia content item.In an embodiment, the multimedia content item is received from a userdevice. At least one signature is generated for at least one objectshown in the multimedia content item. The signatures generated for theat least one object are matched to signatures generated for at least oneconcept. The signatures generated for each concept are retrieved from adata warehouse. Upon identifying a match between at least one object andat least one concept, the correct orientation of the concept isretrieved from the data warehouse. The orientation of the concept iscorrelated to the orientation of the object shown in the multimediacontent item to determine whether the orientation of the object is thecorrect orientation.

Upon identification of an incorrect orientation of the object, themultimedia content item is rotated until the object is in the correctorientation. According to an embodiment, the correct multimedia contentitem is then sent to the user device for display.

FIG. 1 shows an exemplary and non-limiting schematic diagram of anetwork system 100 utilized to describe the various embodimentsdisclosed herein. A network 110 is used to communicate between differentparts of the network system 100. The network 110 may be the Internet,the world-wide-web (WWW), a local area network (LAN), a wide areanetwork (WAN), a metro area network (MAN), and the like.

Further connected to the network 110 is a user device 120 configured toexecute at least one application 125. The application 125 may be, forexample, a web browser, a script, an add-on, a mobile application(“app”), or any application programmed to interact with a server 130.The user device 120 may be, but not limited to, a personal computer(PC), a personal digital assistant (PDA), a mobile phone, a smart phone,a tablet computer, a laptop, a wearable computing device, or anotherkind of computing device equipped with browsing, viewing, listening,filtering, and managing capabilities that is enabled as furtherdiscussed herein below. It should be noted that one user device 120 andone application 125 are illustrated in FIG. 1 only for the sake ofsimplicity and without limitation on the generality of the disclosedembodiments.

The network system 100 also includes a data warehouse 160 configured tostore multimedia content items, previously generated signatures forconcepts or concept structures, information respective of the concepts'orientation in space, and the like. The data warehouse 160 may befurther connected to the network 110. In the embodiment illustrated inFIG. 1, the server 130, further connected to the network 110,communicates with the data warehouse 160 through the network 110. Inother non-limiting configurations, the server 130 is directly connectedto the data warehouse 160.

The various embodiments disclosed herein are realized using the server130, a signature generator system (SGS) 140 and adeep-content-classification (DCC) system 150. The SGS 140 may beconnected to the server 130 directly or through the network 110. Theserver 130 is configured to receive and serve the at least onemultimedia content item in which objects are shown and cause the SGS 140to generate at least one signature respective thereof and query the DCCsystem 150. To this end, the server 130 is communicatively connected tothe SGS 140 and the DCC system 150. The DCC system 150 may be furtherconnected to the network 110.

The DCC system 150 is configured to generate concept structures (orconcepts) and to identify concepts that match the objects. A concept isa collection of signatures representing an object and metadatadescribing the concept. The collection is a signature reduced clustergenerated by inter-matching the signatures generated for the manyobjects, clustering the inter-matched signatures, and providing areduced cluster set of such clusters. As a non-limiting example, a‘Superman concept’ is a signature reduced cluster of signaturesdescribing elements (such as objects) related to, e.g., a Supermancartoon: a set of metadata including textual representations of theSuperman concept.

Techniques for generating concepts and concept structures are alsodescribed in the U.S. Pat. No. 8,266,185 (hereinafter the '185 Patent)to Raichelgauz, et al., which is assigned to a common assignee, and isincorporated by reference herein for all that it contains. In anembodiment, the DCC system 150 is configured and operates as the DCCsystem discussed in the '185 patent. The process of generating thesignatures in the SGS 140 is explained in more detail below with respectto FIGS. 4 and 5.

It should be noted that each of the server 130, the SGS 140, and the DCCsystem 150 typically comprise a processing unit, such as a processor(not shown) or an array of processors coupled to a memory. In oneembodiment, the processing unit may be realized through architecture ofcomputational cores described in detail below. The memory containsinstructions that can be executed by the processing unit. Theinstructions, when executed by the processing unit, cause the processingunit to perform the various functions described herein. The one or moreprocessors may be implemented with any combination of general-purposemicroprocessors, multi-core processors, microcontrollers, digital signalprocessors (DSPs), field programmable gate array (FPGAs), programmablelogic devices (PLDs), controllers, state machines, gated logic, discretehardware components, dedicated hardware finite state machines, or anyother suitable entities that can perform calculations or othermanipulations of information. The server 130 also includes an interface(not shown) to the network 110.

According to the disclosed embodiments, the server 130 is configured toreceive a multimedia content item showing objects from the user device120. The multimedia content item may be, but is not limited to, animage, a graphic, a photograph, and/or combinations thereof and portionsthereof. An object may be any element shown in the multimedia contentitem, for example, a tree, a car, a person, a table, and the like. Inone embodiment, the server 130 is configured to receive a URL of awebpage viewed by the user device 120 and accessed by the application125. The webpage is processed to extract the multimedia content itemcontained therein.

The request to analyze the multimedia content item can be sent by ascript executed in the webpage such as the application 125 (e.g., a webserver or a publisher server) when requested to upload one or moremultimedia content items to the webpage. Such a request may include aURL of the webpage or a copy of the webpage. The application 125 canalso send a picture taken by a user of the user device 120 to the server130.

Responsive to receiving the multimedia content item, the server 130 isconfigured to rotate the multimedia content item until the multimediacontent item is in the correct orientation and to return the correctlyoriented multimedia content item. To this end, the server 130 isconfigured to analyze the multimedia content item to identify portionsor objects in the multimedia content item. As an example, an imageshowing Central Park in New York is analyzed to identify the objects ofa carriage way, a car, a streetlight, and a person. At least onesignature is generated for each object using the SGS 140. The generatedsignatures may be robust to noise and distortion as discussed below.

In one embodiment, using the generated signatures, the DCC system 150 isqueried to determine if there is a match to at least one conceptmaintained in the data warehouse 160. The DCC system 150 returns foreach matching concept a concept's signature (signature reduced cluster(SRC)) and optionally the concept's metadata. Using the SRC of thematching concept and the signatures generated for the at least oneobject, the server 130 is configured to determine if there a differencebetween the orientation of the object in the multimedia content item andthe matching concept. According to an embodiment, parameters such asorientation of an object and/or a concept in space respective of areference point may be taken into account.

Specifically, when one match is identified, the server 130 is configuredto retrieve from the data warehouse 160 information respective of thetypical orientation of a concept in space. The information contained inthe data warehouse 160 may have been entered by users, collected fromexternal web sources connected to the network, saved from previouscalculations of the disclosed method, and the like. In anotherembodiment, the information respective of the typical orientation of aconcept in space may be determined respective of the relation between atleast two elements shown constantly in multimedia elements stored in thedatabase. As a non-limiting example, a tree is always perpendicular tograss. The correct orientation of such a concept is determinedrespective thereof. As an example, when a match to the concept “tree” isidentified, the server 130 is configured to determine that the treeshould be perpendicular to the ground (the ground in such case can beused as a reference point).

The server 130 is further configured to correlate the orientation of anobject shown in the multimedia content item and the correct concept'sorientation. This is performed by correlating the signatures generatedfor the object and the signatures of the concept retrieved from the datawarehouse 160. Here it should be noted that the signatures generated foreach object are generated respective of the spatial location of anobject shown in the multimedia content item. Upon identification of anincorrect orientation of the object, the multimedia content item isrotated until the object is in the correct orientation. According to anembodiment, the correct multimedia content item is then sent to the userdevice 120 for display.

In another embodiment, the SGS 140 is configured to generate signaturesfor the objects shown in the received multimedia content item. Thegenerated signatures are matched by the server 130 to previouslygenerated signatures of concepts maintained in the data warehouse 160 toidentify at least one object that matches to at least one concept. Whensuch a match is identified, the server 130 is configured to correlatethe orientation of the concept and the orientation of the object shownin the multimedia content item as noted above. Upon identification of anincorrect orientation of the object, the multimedia content item isrotated until the object is in the correct orientation. According to anembodiment, the correct multimedia content item is then sent to the userdevice for display.

FIG. 2 depicts an exemplary and non-limiting flowchart 200 describing amethod for detecting an incorrect orientation of a multimedia contentitem. The method may be performed by the server 130.

In S210, a multimedia content item in which objects are shown isreceived. In an embodiment, the multimedia content item is receivedtogether with a request to analyze the orientation of the multimediacontent item. Optionally, in S215, the received multimedia content itemis analyzed to identify at least one object shown within.

In S220 at least one signature is generated for at least one object. Thesignatures are generated respective of the spatial location of theobject shown in the multimedia content item. The signatures aregenerated by the SGS 140 as described in greater detail below withrespect to FIGS. 3 and 4.

In S230, a DCC system (e.g., DCC system 150) is queried to find a matchbetween at least one concept and the object using their respectivesignatures. In an embodiment, at least one signature generated for anobject is matched against the signature (signature reduced cluster(SRC)) of each concept maintained by the DCC system 150. If thesignature of the concept overlaps with the signature of the multimediaelement more than a predetermined threshold level, a match exists.Various techniques for determining matching concepts are discussed inthe '185 Patent. For each matching concept the respective multimediaelement is determined to be identified and at least the conceptsignature (SRC) is returned.

In S240, the correct/typical orientation of the matching concept isdetermined respective of information related to the concept maintainedin a database, such as the data warehouse 160. The information containedin the data warehouse 160 may have been entered by users, collected fromexternal web sources connected to the network, saved from previouscalculations of the disclosed method, and the like. In anotherembodiment, the correct/typical orientation of the matching concept isdetermined respective of the relation between at least two elementsshown constantly in multimedia elements stored in the database, forexample, a tree is always perpendicular to grass, etc.

In S250 the orientation of the object is correlated to the orientationof the concept. The correlation includes analyzing the signaturesgenerated for the object and the signatures of the concept. Suchcorrelation is performed based on the spatial location of the object andrespective of information related to the concept maintained in the datawarehouse 160. In another embodiment, if matching concepts are notfound, the signatures generated in S220 are utilized to search the datawarehouse 160.

In S260, it is checked whether the orientation of the object shown inthe multimedia content item is the correct orientation, and if so,execution continues with S280; otherwise, execution continues with 270.In S270, the multimedia content item is rotated until the object is inthe correct orientation. According to an embodiment, the correctedmultimedia content item is sent to the user device 120 for display. Inanother embodiment, object is rotated until the object is in the correctorientation. In S280, it is checked whether additional multimediacontent items are received, and if so, execution continues with S215;otherwise, execution terminates.

FIG. 3 shows an exemplary and non-limiting schematic diagram of adrawing 300 utilized to describe the correction of an incorrectorientation of a multimedia content item according to an embodiment. Theprocess may be performed by the server 130.

The objects of a house 310, the moon 320 and a tree 330 are identifiedin the drawing 300 and signatures are generated for each such object.The generated signatures are then used to search for matching concepts.The “house” concept is identified. Information related to the “house”concept is retrieved and the typical orientation of a house in space isdetermined (i.e., the house should be perpendicular to the ground).Specifically, the server 130 is configured to query a DCC system 150 tosearch a data warehouse 160 for information related to the “house”concept. This information includes a typical orientation of a houserelative to the ground. In another embodiment, the typical orientationof the house is determined respective of the relation between at leasttwo elements shown constantly in multimedia elements stored in thedatabase, for example, a tree is always perpendicular to grass, etc. Theorientation of the concept “house” is correlated to orientation of thehouse 310 shown in the drawing and it is determined that the orientationof the house 310 is incorrect, and therefore the orientation of thedrawing is incorrect. According to this embodiment, the drawing 300 isrotated 340 until the house 310 is in the correct orientation.

FIGS. 4 and 5 illustrate the generation of signatures for the multimediacontent elements by the SGS 140 according to one embodiment. Anexemplary high-level description of the process for large scale matchingis depicted in FIG. 4. In this non-limiting example, the matching isconducted based on video content.

Video content segments 2 from a Master database (DB) 6 and a Target DB 1are processed in parallel by a large number of independent computationalcores 3 that constitute an architecture for generating the signatures(hereinafter the “Architecture”). Further details on the generation ofcomputational cores are provided below. The independent cores 3 generatea database of Robust Signatures and Signatures 4 for Targetcontent-segments 5 and a database of Robust Signatures and Signatures 7for Master content-segments 8. An exemplary and non-limiting process ofsignature generation for an audio component is shown in detail in FIG.5. Finally, Target Robust Signatures and/or Signatures are effectivelymatched, by a matching algorithm 9, to Master Robust Signatures and/orSignatures database to find all matches between the two databases.

To demonstrate an example of the signature generation process, it isassumed, merely for the sake of simplicity and without limitation on thegenerality of the disclosed embodiments, that the signatures are basedon a single frame, leading to certain simplification of thecomputational cores generation. The Matching System is extensible forsignatures generation capturing dynamics in-between the frames.

The Signatures' generation process is now described with reference toFIG. 5. The first step in the process of signatures generation from agiven speech-segment is to breakdown the speech-segment to K patches 14of random length P and random position within the speech segment 12. Thebreakdown is performed by the patch generator component 21. The value ofthe number of patches K, random length P, and random position parametersis determined based on optimization, considering the tradeoff betweenaccuracy rate and the number of fast matches required in the flowprocess of the server 130 and SGS 140. Thereafter, all the K patches areinjected in parallel into all computational cores 3 to generate Kresponse vectors 22, which are fed into a signature generator system 23to produce a database of Robust Signatures and Signatures 4.

In order to generate Robust Signatures, i.e., Signatures that are robustto additive noise L (where L is an integer equal to or greater than 1)by the computational cores 3 a frame ‘i’ is injected into all the cores3. Then, cores 3 generate two binary response vectors: {right arrow over(S)}, which is a Signature vector, and {right arrow over (RS)} which isa Robust Signature vector.

For generation of signatures robust to additive noise, such asWhite-Gaussian-Noise, scratch, etc., but not robust to distortions, suchas crop, shift and rotation, etc., a core Ci={ni} (1≤i≤L) may consist ofa single leaky integrate-to-threshold unit (LTU) node or more nodes. Thenode ni equations are:

$V_{i} = {\sum\limits_{j}{w_{ij}k_{j}}}$ n_(i) = (Vi − TH_(x))

where, is a Heaviside step function; wij is a coupling node unit (CNU)between node i and image component j (for example, grayscale value of acertain pixel j); kj is an image component ‘j’ (for example, grayscalevalue of a certain pixel j); TH_(x) is a constant Threshold value, where‘x’ is ‘S’ for Signature and ‘RS’ for Robust Signature; and Vi is aCoupling Node Value.

The Threshold values ThX are set differently for Signature generationthan for Robust Signature generation. For example, for a certaindistribution of Vi values (for the set of nodes), the thresholds forSignature (ThS) and Robust Signature (ThRS) are set apart, afteroptimization, according to at least one or more of the followingcriteria:

-   -   1: For: V_(i)>Th_(RS)

1−p(V>Th _(S))−1−(1−ε)^(l)<<1

i.e., given that I nodes (cores) constitute a Robust Signature of acertain image I, the probability that not all of these I nodes willbelong to the Signature of same, but noisy image, Ĩ is sufficiently low(according to a system's specified accuracy).

-   -   2: p(V_(i)>Th_(RS))≈l/L

i.e., approximately I out of the total L nodes can be found to generatea Robust Signature according to the above definition.

-   -   3: Both Robust Signature and Signature are generated for certain        frame i.

It should be understood that the generation of a signature isunidirectional, and typically yields lossless compression, where thecharacteristics of the compressed data are maintained but theuncompressed data cannot be reconstructed. Therefore, a signature can beused for the purpose of comparison to another signature without the needfor comparison to the original data. The detailed description of thesignature generation can be found in U.S. Pat. Nos. 8,326,775 and8,312,031, assigned to common assignee, which are hereby incorporated byreference for all the useful information they contain.

A computational core generation is a process of definition, selection,and tuning of the parameters of the cores for a certain realization in aspecific system and application. The process is based on several designconsiderations, such as:

(a) The cores should be designed so as to obtain maximal independence,i.e., the projection from a signal space should generate a maximalpair-wise distance between any two cores' projections into ahigh-dimensional space.

(b) The cores should be optimally designed for the type of signals,i.e., the cores should be maximally sensitive to the spatio-temporalstructure of the injected signal, for example, and in particular,sensitive to local correlations in time and space. Thus, in some cases,a core represents a dynamic system, such as in state space, phase space,edge of chaos, etc., which is uniquely used herein to exploit itsmaximal computational power.

(c) The cores should be optimally designed with regard to invariance toa set of signal distortions, of interest in relevant applications.

A detailed description of the computational core generation and theprocess for configuring such cores is discussed in more detail in U.S.Pat. No. 8,655,801 referenced above.

The various embodiments disclosed herein can be implemented as hardware,firmware, software, or any combination thereof. Moreover, the softwareis preferably implemented as an application program tangibly embodied ona program storage unit or computer readable medium consisting of parts,or of certain devices and/or a combination of devices. The applicationprogram may be uploaded to, and executed by, a machine comprising anysuitable architecture. Preferably, the machine is implemented on acomputer platform having hardware such as one or more central processingunits (“CPUs”), a memory, and input/output interfaces. The computerplatform may also include an operating system and microinstruction code.The various processes and functions described herein may be either partof the microinstruction code or part of the application program, or anycombination thereof, which may be executed by a CPU, whether or not sucha computer or processor is explicitly shown. In addition, various otherperipheral units may be connected to the computer platform such as anadditional data storage unit and a printing unit. Furthermore, anon-transitory computer readable medium is any computer readable mediumexcept for a transitory propagating signal.

All examples and conditional language recited herein are intended forpedagogical purposes to aid the reader in understanding the principlesof the disclosed embodiments and the concepts contributed by theinventor to furthering the art, and are to be construed as being withoutlimitation to such specifically recited examples and conditions.Moreover, all statements herein reciting principles, embodiments, andembodiments of the disclosure, as well as specific examples thereof, areintended to encompass both structural and functional equivalentsthereof. Additionally, it is intended that such equivalents include bothcurrently known equivalents as well as equivalents developed in thefuture, i.e., any elements developed that perform the same function,regardless of structure.

What is claimed is:
 1. A method for identifying a correct orientation ofa multimedia content item, the method comprising: receiving from a userdevice the multimedia content item; identifying at least one objectshown in the multimedia content item; generating by a signaturegenerator system (SGS) at least one signature for the at least oneobject shown in the multimedia content item; querying, using the atleast one generated signature, a deep-content-classification (DCC)system to find at least one concept that matches the at least oneobject, wherein the querying of the DCC system is performed using the atleast one signature generated for each object shown in the multimediacontent item; determining a correct orientation of the at least onematching concept; and comparing an orientation of the at least oneobject to the determined correct orientation to determine if the atleast one object is correctly oriented.
 2. The method of claim 1,wherein the at least one signature generated for each object shown inthe multimedia content item is robust to noise and distortion.
 3. Themethod of claim 1, wherein the received multimedia content item is anyof: an image, a graphic, and a photograph.
 4. The method of claim 1,wherein the orientation of the at least one object is determinedrespective of the spatial location of the at least one signaturegenerated for the at least one object.
 5. The method of claim 1, furthercomprising: upon identifying that the at least one object is incorrectlyoriented, rotating the multimedia content item until the at least oneobject is in the correct orientation; and displaying on the user devicethe correct multimedia content item.
 6. The method of claim 1, whereinthe at least one concept is a collection of signatures representing theat least one object and metadata describing the at least one concept,the collection is of a signature reduced cluster generated byinter-matching signatures generated for the plurality of object shown inthe multimedia content item, and the at least one matching concept isrepresented using at least one signature.
 7. The method of claim 6,wherein the at least one concept is determined to match the at least oneobject when a signature of the at least one concept matches the at leastone generated signature for the at least one object over a predefinedthreshold.
 8. The method of claim 1, wherein upon identification of atleast one matching concept, the at least one signature of the at leastone matching concept is returned.
 9. A non-transitory computer readablemedium having stored thereon instructions for causing one or moreprocessing units to execute the method according to claim
 1. 10. Asystem for identifying a correct orientation of a multimedia contentitem, the system comprises: an interface to a network for receiving themultimedia content item; a processing unit; and a memory communicativelyconnected to the processing unit, wherein the memory containsinstructions that, when executed by the processing unit, configures thesystem to: receive from a user device the multimedia content item;identify at least one object shown in the multimedia content item;generate by a signature generator system (SGS) at least one signaturefor the at least one object shown in the multimedia content item; query,using the at least one generated signature, adeep-content-classification (DCC) system to find at least one conceptthat matches the at least one object, wherein the querying of the DCCsystem is performed using the at least one signature generated for eachobject shown in the multimedia content item; determine a correctorientation of the at least one matching concept; and comparing anorientation of the at least one object to the determined correctorientation to determine if the at least one object is correctlyoriented.
 11. The system of claim 10, wherein the at least one signaturegenerated for each object shown in the multimedia content item is robustto noise and distortion.
 12. The system of claim 10, wherein thereceived multimedia content item is any of: an image, a graphic, and aphotograph.
 13. The system of claim 10, wherein the orientation of theat least one object is determined respective of the spatial location ofthe at least one signature generated for the at least one object. 14.The system of claim 10, further configured to: upon identifying that theat least one object is incorrectly oriented, rotate the multimediacontent item until the at least one object is in the correctorientation; and display on the user device the correct multimediacontent item.
 15. The system of claim 10, wherein the at least oneconcept is a collection of signatures representing the at least oneobject and metadata describing the at least one concept, the collectionis of a signature reduced cluster generated by inter-matching signaturesgenerated for the plurality of object shown in the multimedia contentitem, and the at least one matching concept is represented using atleast one signature.
 16. The system of claim 15, wherein the at leastone concept is determined to match the at least one object when asignature of the at least one concept matches the at least one generatedsignature for the at least one object over a predefined threshold. 17.The system of claim 10, wherein upon identification of at least onematching concept, the at least one signature of the at least onematching concept is returned.